home *** CD-ROM | disk | FTP | other *** search
/ Languguage OS 2 / Languguage OS II Version 10-94 (Knowledge Media)(1994).ISO / language / sim / readme next >
Text File  |  1994-03-14  |  3KB  |  65 lines

  1. The Real Time Recurrent Learning Algorithm was used to train a multi-layer,
  2. feed-forward Artificial Neural Network controller to perform the function
  3. of a Flight Test Maneuver Autopilot for a High Performance Fighter Aircraft
  4. flight simulator.  Derivative Arithmetic replaces the normal floating-point
  5. arithmetic in a conventional computer model so that the partial derivatives
  6. of the state variables at the next time step with respect to the state and
  7. control variables at the current time step are computed along with the normal
  8. result.  These partial derivatives are propagated backward through the layers
  9. of the network and used to update the total partial derivatives of the state
  10. and control variables with respect to the biases and connection weights.
  11. The AIAA Aircraft Controls Design Challenge computer model was converted
  12. from FORTRAN 77 to C++ using A Fortran-to-C Converter so that a C++ class
  13. could be used to implement derivative arithmetic.
  14.  
  15. The C++ Matrix class is used to implement the Artificial Neural Controller
  16. and the Real Time Recurrent Learning Algorithm.  The main program can be
  17. used to train an Artificial Neural Controller for any nonlinear system
  18. if source code for an accurate computer model is available.
  19.  
  20. The flight simulator is available via anonymous FTP from `ftp.cs.ucla.edu'.
  21. Get the compressed tarfile, `/pub/simulator.tar.Z', uncompress it and extract
  22. the `simulator' directory from `simulator.tar'.  Then go to the `simulator'
  23. directory and type `make'.
  24.  
  25. The flight simulator was used to train an Artificial Neural Controller to
  26. fly a 2g coordinated turn at Mach 1 and 20000 feet.  If you want to see
  27. the simulator fly this turn, type `cp network.bak network.old' then type
  28. `src/simulate -v'.  The program will display state and control variables
  29. every 127 time steps.  Read the documentation in the `readme' file if
  30. you want to see it LEARN to fly this maneuver.
  31.  
  32. Enjoy, Bob Tisdale (edwin@cs.ucla.edu)
  33.  
  34. P.S.  I hope the following notes will be helpful.
  35.  
  36. unix% ftp ftp.cs.ucla.edu
  37. Name (ftp.cs.ucla.edu:your_login_ID): anonymous
  38. Password: your_login_ID
  39. ftp> cd pub
  40. ftp> binary
  41. ftp> get simulator.tar.Z
  42. ftp> bye
  43. unix% uncompress simulator.tar.Z
  44. unix% tar xvf simulator.tar
  45. unix% cd simulator
  46. unix% make
  47. unix% cp network.bak network.old
  48. unix% src/simulate -v
  49.  
  50. Note: ftp.cs.ucla.edu is an alias for internet-address 131.179.128.36
  51.       The C++ Matrix class can be obtained via anonymous FTP from
  52.       the same site in file `/pub/Matrix.tar.Z'.  The `libI77.a' and
  53.       `libF77.a' Fortran libraries can be obtained via anonymous FTP
  54.       from `netlib.att.com:/netlib/f2c/'.
  55.  
  56.       The Gnu C++ compiler, `g++', and library, `libg++', are required.
  57.       It has been tested on Sun SPARC computers running Solaris but
  58.       should compile and run on any UNIX workstation with a Gnu C++
  59.       compiler and library.  Instructions for installing the Gnu C++
  60.       compiler and libraries can be obtained in either plain text or
  61.       texinfo format via anonymous FTP from `rtfm.mit.edu' from the
  62.       `/pub/usenet/news.answers/g++-FAQ' directory.  I will be glad to
  63.       help anyone who wishes to port this code to other C++ compilers
  64.       if they are willing to make it available to others.
  65.